<template>
	<view>

		<button class="button">
			<span class="base"></span>
			<span class="red"></span>
		</button>
	</view>
</template>

<script>
	export default {
		name: "button11",
		data() {
			return {

			};
		}
	}
</script>

<style scoped>
	/* From Uiverse.io by r7chardgh */
	.button {
		display: flex;
		position: relative;
		background: none;
		border: 0;
		transform-style: preserve-3d;
		transform: rotateX(45deg)rotateZ(45deg);
		cursor: pointer;
	}

	.button>.red {
		position: absolute;
		width: 1.5em;
		height: 1.5em;
		border-radius: 50%;
		top: 50%;
		left: 50%;
		background-color: rgb(255, 49, 49);
		transform: translate(-50%, -50%);
		transform-style: preserve-3d;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.red::before {
		content: "";
		position: absolute;
		width: 100%;
		height: 1em;
		left: 0;
		background-color: rgb(255, 49, 49);
		transform: rotateZ(-45deg) translateY(-.5em);
		transition: height 150ms, transform 150ms;
	}

	.red::after {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		border-radius: 50%;
		background-color: rgb(255, 49, 49);
		transform: rotateZ(-45deg) translateY(-1em);
		transition: transform 150ms;
		border: 1px solid rgb(255, 196, 196);
	}

	.button>.base {
		position: relative;
		width: 3em;
		height: 3em;
		background-color: rgb(245, 216, 90);
		transform-style: preserve-3d;
		border-bottom: 1px solid rgb(255, 255, 255);
		border-right: 1px solid rgb(255, 255, 255);
	}

	.base::before {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background-color: rgb(245, 216, 90);
		transform-origin: bottom;
		transform: rotateX(90deg);
		border-right: 1px solid #fff;
	}

	.base::after {
		content: "";
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		background-color: rgb(245, 216, 90);
		transform-origin: right;
		transform: rotateY(-90deg);
		border-left: 1px solid #fff;
	}

	.button:active>.red::before {
		transform: rotateZ(-45deg) translateY(0);
		height: 0;
	}

	.button:active>.red::after {
		transform: rotateZ(-45deg) translateY(0);
	}
</style>